Using Design Patterns and Constraints to Automate the Detection and Correction of Inter-Class Design Defects
نویسندگان
چکیده
Developing code free of defects is a major concern for the object-oriented software community. In this paper, we classify design defects as those within classes ( intra-class), those among classes ( interclasses), and those of semantic nature (behavioral). Then, we introduce guidelines to automate the detection and correction of inter-class design defects: We assume that design patterns embody good architectural solutions and that a group of entities with organization similar, but not equal, to a design pattern represents an inter-class design defect. Thus, the transformation of such a group of entities, such that its organization complies exactly with a design pattern, corresponds to the correction of an inter-class design defect. We use a meta-model to describe design patterns and we exploit the descriptions to infer sets of detection and transformation rules. A constraints solver with explanations uses the descriptions and rules to recognize groups of entities with organizations similar to the described design patterns. A transformation engine modifies the source code to comply with the recognized distorted design patterns. We apply these guidelines on the Composite pattern using Ptidej, our prototype tool that integrates the complete guidelines.
منابع مشابه
An approach to fault detection and correction in design of systems using of Turbo codes
We present an approach to design of fault tolerant computing systems. In this paper, a technique is employed that enable the combination of several codes, in order to obtain flexibility in the design of error correcting codes. Code combining techniques are very effective, which one of these codes are turbo codes. The Algorithm-based fault tolerance techniques that to detect errors rely on the c...
متن کاملDesign and implementation of Persian spelling detection and correction system based on Semantic
Persian Language has a special feature (grapheme, homophone, and multi-shape clinging characters) in electronic devices. Furthermore, design and implementation of NLP tools for Persian are more challenging than other languages (e.g. English or German). Spelling tools are used widely for editing user texts like emails and text in editors. Also developing Persian tools will provide Persian progr...
متن کاملAn Approach for Detection and Correction of Design Defects in Object Oriented Software
The presence of design defects in object oriented software can have a severe impact on the quality of software. The detection and correction of design defects is important for cost effective maintenance. In this work we propose an automatic detection technique which uses the design patterns as reference to detect the design defects in existing software design. We also propose a correction techn...
متن کاملبررسی مقایسهای دقت Cone beam CT، رادیوگرافی داخل دهانی و پروب پریودنتال در اندازهگیری ضایعات استخوانی پریودنتال
Background and Aims: Cone beam computed tomography (CBCT) produces high-quality data about diagnosis and periodontal treatment. To date, there is not enough research regarding periodontal bone measurement using CBCT. The aim of this study was to compare the accuracy of CBCT in measuring periodontal defects to that of intraoral radiography and probing methods.Materials and Methods: Two-hundred a...
متن کاملThe Least Cost Design of Water Distribution Networks Using Water Quality Constraints
Water quality is a very important issue related to people health, but it is not usually considered in water distribution networks (WDNs) design. In this paper, new constraints such as free residual chlorine and the quality performance index are incorporated into the least cost design of water distribution networks. EPANET2 was applied for the hydraulic and quality analysis of water distributio...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001